import { reactive } from 'vue'
export default () => {
  //当前坐标定位点
  const nowCoordinate = reactive<any>({
    starLongitude: null,
    starLatitude: null,
  })

  //  打开地图导航到位置
  const getCoordinate = (name: string, startingLongitude: string, startingLatitude: string) => {
    toMapAPP(startingLongitude, startingLatitude, name)
  }

  // 唤起导航软件
  const toMapAPP = (longitude: string, latitude: string, name: string) => {
    // console.log(longitude);
    // console.log(latitude);

    // #ifdef APP-PLUS
    let url = ''
    //打开第三方地图
    if (plus.os.name == 'Android') {
      //判断是安卓端
      plus.nativeUI.actionSheet(
        {
          //选择菜单
          title: '选择地图应用',
          cancel: '取消',
          buttons: [
            { title: '百度地图' },
            { title: '高德地图' },
          ],
        },
        function (e) {
          switch (e.index) {
            //下面是拼接url,不同系统以及不同地图都有不同的拼接字段
            case 1:
              url = `baidumap://map/marker?location=${latitude},${longitude}&title=${name}&coord_type=gcj02&src=andr.baidu.openAPIdemo`
              break
            case 2:
              url = `androidamap://viewMap?sourceApplication=appname&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`
              break
            default:
              break
          }
          if (url != '') {
            url = encodeURI(url)
            //plus.runtime.openURL(url,function(e){})调起手机APP应用
            plus.runtime.openURL(url, function (e) {
              plus.nativeUI.alert('本机未安装指定的地图应用')
            })
          }
        }
      )
    } else {
      // iOS上获取本机是否安装了百度高德地图，需要在manifest里配置
      // 在manifest.json文件app-plus->distribute->apple->urlschemewhitelist节点下添加
      //（如urlschemewhitelist:["iosamap","baidumap"]）
      plus.nativeUI.actionSheet(
        {
          title: '选择地图应用',
          cancel: '取消',
          buttons: [
            { title: '百度地图' },
            { title: '高德地图' },
          ],
        },
        function (e) {
          switch (e.index) {
            case 1:
              url = `baidumap://map/marker?location=${latitude},${longitude}&title=${name}&content=${name}&src=ios.baidu.openAPIdemo&coord_type=gcj02`
              break
            case 2:
              url = `iosamap://viewMap?sourceApplication=applicationName&poiname=${name}&lat=${latitude}&lon=${longitude}&dev=0`
              break
            default:
              break
          }
          if (url != '') {
            url = encodeURI(url)
            plus.runtime.openURL(url, function (e) {
              plus.nativeUI.alert('本机未安装指定的地图应用')
            })
          }
        }
      )
    }
    // #endif

  }

  return {
    getCoordinate,
  }
}
